//
//  PublishEventTableViewController.h
//  StanfordEvents
//
//  Created by Gongmyung on 7/6/10.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "Event.h"
#import "EventDescriptionTableCell.h"
#import "EventDateTableCell.h"
#import "DatePickerViewController.h"
#import "DetailWriterViewController.h"
#import "LocationPickerViewController.h"
#import "TagsPickerTableViewController.h"
#import "JSON.h"
#import "ASIFormDataRequest.h"

@class StanfordEventsAppDelegate;

@protocol PublishEventTableViewDelegate <NSObject>
@required
- (void)PublishEventViewControllerDidFinish:(Event *)event;
- (UINavigationController *)navController;          // Return the navigation controller
@end

@interface PublishEventTableViewController : UITableViewController 
<DatePickerViewDelegate, DetailWriterViewDelegate, LocationPickerViewDelegate, TagsPickerDelegate>{
    NSDate *startDate, *endDate;
    NSString *eventTitle, *eventHost, *eventDescription, *location;
    NSMutableArray *tags;
    NSMutableSet *tagSet;
    double latitude, longitude;
    NSManagedObjectContext *managedObjectContext;
    bool locationNotSet;
    
    id <PublishEventTableViewDelegate> delegate;
}

- (id)initWithStyle:(UITableViewStyle)style withContext:(NSManagedObjectContext*)context;

@property (nonatomic, retain) id <PublishEventTableViewDelegate> delegate;

@end
